/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 高生平
 * Date: 2025-11-10
 * Time: 20:04
 */
public class Test {
    public static void main(String[] args) {
        MyArraylist array = new MyArraylist();
        for(int i = 0; i < 11; i++) { //添加11个元素，检查扩容功能
            array.add(i);
        }
        array.display();//检查 打印数组 功能
        System.out.println("添加11个元素后的数组长度" + array.elem.length);
        System.out.println("添加11个元素后的数组的元素个数" + array.usedSize);

        //检查 越界抛出异常 功能
        //array.add(-2, 199);
        //array.add(20, 299);

        //检查 添加元素 功能
        System.out.println();
        array.add(11);
        array.display();
        System.out.println(array.usedSize);
        array.add(1, 399);
        array.display();
        System.out.println(array.usedSize);

        //检查 判定是否包含某个元素 功能
        System.out.println();
        System.out.println(array.contains(288));
        System.out.println(array.contains(399));

        //检查 查找某个元素对应的位置 功能
        System.out.println();
        System.out.println(array.indexOf(200));
        System.out.println(array.indexOf(399));

        //检查 获取 pos 位置的元素 功能
        System.out.println();
        //System.out.println(array.get(-1)); //检查异常功能
        //System.out.println(array.get(20)); //检查异常功能
        System.out.print(array.get(0) + " ");
        System.out.print(array.get(1) + " ");
        System.out.print(array.get(2));

        //检查 更新元素 功能
        System.out.println();
        array.display();
        //array.set(-1, 100); //检查异常功能
        //array.set(20, 100); //检查异常功能
        array.set(1, 666);
        array.set(11, 123);
        array.display();

        //检查 删除第一次出现的关键字key 功能
        System.out.println();
        array.remove(888);
        array.remove(666);
        array.display();
        System.out.println(array.usedSize);

        //检查 获取顺序表长度 功能
        System.out.println();
        System.out.println("顺序表当前长度：" + array.size());

        //检查 清空顺序表 功能
        System.out.println();
        array.clear();
        array.display();
        System.out.println(array.usedSize);
        System.out.println(array.elem.length);
    }
}
